package models

type PCMessage struct {
	Payload struct {
		MD5           string   `json:"MD5"`
		BizID         string   `json:"bizId"`
		BizType       string   `json:"bizType"`
		Content       string   `json:"content"`
		ContentType   string   `json:"contentType"`
		CustomContent struct{} `json:"customContent"`
		Digest        struct {
			MD5         string `json:"MD5 "`
			Image       string `json:"image"`
			ImageFormat string `json:"imageFormat"`
			ImageType   string `json:"imageType"`
			Style       string `json:"style"`
			Text        string `json:"text"`
		} `json:"digest"`
		ExpireTime string `json:"expireTime"`
		Files      []struct {
			FileName string `json:"fileName"`
			FilePath string `json:"filePath"`
		} `json:"files"`
		IsPublic        string   `json:"isPublic"`
		NotifyStyle     string   `json:"notifyStyle"`
		ReceiverAppList []string `json:"receiverAppList"`
		SendTime        string   `json:"sendTime"`
		Source          string   `json:"source"`
		TagList         struct {
			Region []string `json:"region"`
		} `json:"tagList"`
		Title string `json:"title"`
		Top   string `json:"top"`
	} `json:"payload"`
}

type WebMessage struct {
	AccountList []string `json:"accountList"`
	AppID       int64    `json:"appId"`
	Message     struct {
		BatchID       string `json:"batchId"`
		BizType       string `json:"bizType"`
		Content       string `json:"content"`
		ContentType   string `json:"contentType"`
		CustomContent struct {
			Key1 string `json:"key1"`
			Key2 string `json:"key2"`
		} `json:"customContent"`
		Digest struct {
			Style string `json:"style"`
			Text  string `json:"text"`
		} `json:"digest"`
		ExpireTime      string   `json:"expireTime"`
		NotifyStyle     string   `json:"notifyStyle"`
		ReceiverAppList []string `json:"receiverAppList"`
		SendTime        string   `json:"sendTime"`
		Seq             string   `json:"seq"`
		TimelyType      string   `json:"timelyType"`
		Title           string   `json:"title"`
		Top             string   `json:"top"`
	} `json:"message"`
	Sign      string `json:"sign"`
	Timestamp int64  `json:"timestamp"`
}


type AppMessage struct {
	AccountList []string `json:"accountList"`
	AppID       string   `json:"appId"`
	BizType     string   `json:"bizType"`
	ExpireTime  string   `json:"expireTime"`
	Message     struct {
		Content       string `json:"content"`
		CustomContent struct {
			Key1 string `json:"key1"`
			Key2 string `json:"key2"`
		} `json:"customContent"`
		Title string `json:"title"`
	} `json:"message"`
	ReceiverAppList []string `json:"receiverAppList"`
	SendTime        string   `json:"sendTime"`
	Sign            string   `json:"sign"`
	Timestamp       string   `json:"timestamp"`
}


type WeMessage struct {
	AcceptTime []struct {
		End struct {
			Hour string `json:"hour"`
			Min  string `json:"min"`
		} `json:"end"`
		Start struct {
			Hour string `json:"hour"`
			Min  string `json:"min"`
		} `json:"start"`
	} `json:"acceptTime"`
	AppID   string `json:"appId"`
	BatchID string `json:"batchId"`
	BizType string `json:"bizType"`
	Content struct {
		Data struct {
			First struct {
				Color string `json:"color"`
				Value string `json:"value"`
			} `json:"first"`
			Keyword1 struct {
				Color string `json:"color"`
				Value string `json:"value"`
			} `json:"keyword1"`
			Keyword2 struct {
				Color string `json:"color"`
				Value string `json:"value"`
			} `json:"keyword2"`
			Remark struct {
				Color string `json:"color"`
				Value string `json:"value"`
			} `json:"remark"`
		} `json:"data"`
		FormID     string `json:"form_id"`
		TemplateID string `json:"template_id"`
		URL        string `json:"url"`
	} `json:"content"`
	ExpireTime  string   `json:"expireTime"`
	Receiver    []string `json:"receiver"`
	ReceiverApp []string `json:"receiverApp"`
	SendTime    string   `json:"sendTime"`
	Seq         string   `json:"seq"`
	Sign        string   `json:"sign"`
	Timestamp   string   `json:"timestamp"`
	Title       string   `json:"title"`
}
